<html>
 <head>
  <meta charset="UTF-8">
 </head>
 <body>
  <p data-lake-id="u72a1b5c2" id="u72a1b5c2"><span data-lake-id="u9d9bbd6e" id="u9d9bbd6e">ZK中主要有以下角色：</span></p>
  <p data-lake-id="u588bc2b7" id="u588bc2b7"><span data-lake-id="u16e9a0b9" id="u16e9a0b9">​</span><br></p>
  <p data-lake-id="u9dbd23df" id="u9dbd23df"><strong><span data-lake-id="u9ea9d117" id="u9ea9d117">领导者（leader）：</span></strong><span data-lake-id="u0b98d4d5" id="u0b98d4d5">负责进行投票的发起和决议，更新系统状态。为客户端提供读和写服务。</span></p>
  <p data-lake-id="uab3996f0" id="uab3996f0"><span data-lake-id="u88acc05c" id="u88acc05c">​</span><br></p>
  <p data-lake-id="ude452b05" id="ude452b05"><strong><span data-lake-id="u40dbbc35" id="u40dbbc35">跟随者（follower）：</span></strong><span data-lake-id="u9e4edd5d" id="u9e4edd5d">用于接受客户端请求并响应客户端返回结果，在选主过程中参与投票。为客户端提供读服务。</span></p>
  <p data-lake-id="u1e5eed71" id="u1e5eed71"><span data-lake-id="u2dd8990d" id="u2dd8990d">​</span><br></p>
  <p data-lake-id="u26cb1c1d" id="u26cb1c1d"><strong><span data-lake-id="ufa059105" id="ufa059105">观察者（observer）：</span></strong><span data-lake-id="ud75378b4" id="ud75378b4">可以接受客户端连接，将写请求转发给leader，但observer不参加投票过程，只同步leader的状态，observer的目的是为了扩展系统，提高读取速度。</span></p>
  <p data-lake-id="u9ef8d222" id="u9ef8d222"><span data-lake-id="ud14ed0eb" id="ud14ed0eb">​</span><br></p>
  <p data-lake-id="u9ea173c9" id="u9ea173c9"><strong><span data-lake-id="u3b71d645" id="u3b71d645">客户端（client）：</span></strong><span data-lake-id="u703139a9" id="u703139a9">请求发起方</span></p>
 </body>
</html>